package com.yuke.cloud.service.wmc.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.*;
import java.util.Date;


@Data
public class WmsStockInPurchaseDto {
    @Transient
    private String specName;
    @Transient
    private String productName;
    @Transient
    private String warehouseName;
    @Transient
    private String categoryName;
    @Transient
    private Integer quality;
    @Transient
    private Long categoryId;
    @Transient
    private Long brandId;
    /**
     * 主键，自增
     */
    @Id
    @Column(name = "stock_in_id")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @ApiModelProperty(value = "stockInId主键，自增")
    private Long stockInId;

    /**
     * 仓库ID
     */
    @Column(name = "warehouse_id")
    @ApiModelProperty(value = "warehouseId仓库ID")
    private Long warehouseId;

    /**
     * 入库类型，0：新采购入库，1：其他仓库调配入库，2：用户退货入库。
     */
    @Column(name = "in_type")
    @ApiModelProperty(value = "inType入库类型，0：新采购入库，1：其他仓库调配入库，2：用户退货入库。")
    private Byte inType;

    /**
     * 商品规格ID
     */
    @Column(name = "spec_id")
    @ApiModelProperty(value = "specId商品规格ID")
    private Long specId;

    /**
     * 商品ID
     */
    @Column(name = "product_id")
    @ApiModelProperty(value = "productId商品ID")
    private Long productId;

    /**
     * 入库数量
     */
    @Column(name = "in_number")
    @ApiModelProperty(value = "inNumber入库数量")
    private Integer inNumber;

    /**
     * 商品从供应商处进货时价格，单位分，当从退货、调配入库时该处可不填
     */
    @Column(name = "supply_price")
    @ApiModelProperty(value = "supplyPrice商品从供应商处进货时价格，单位分，当从退货、调配入库时该处可不填")
    private Integer supplyPrice;

    /**
     * 当入库商品为从其他仓库调货入库时，该字段填入调货单ID
     */
    @Column(name = "trans_order_id")
    @ApiModelProperty(value = "transOrderId当入库商品为从其他仓库调货入库时，该字段填入调货单ID")
    private Long transOrderId;

    /**
     * 当退货商品入库时，该字段填入退货单ID，与ass_goods_return表关联
     */
    @Column(name = "goods_return_id")
    @ApiModelProperty(value = "goodsReturnId当退货商品入库时，该字段填入退货单ID，与ass_goods_return表关联")
    private Long goodsReturnId;

    /**
     * 是否删除，0：未删除，1：已删除
     */
    @Column(name = "is_delete")
    @ApiModelProperty(value = "isDelete是否删除，0：未删除，1：已删除")
    private Boolean isDelete;

    /**
     * 入库时间
     */
    @Column(name = "mfg_date")
    @ApiModelProperty(value = "mfgDate入库时间")
    private Date mfgDate;

    /**
     * 入库时间
     */
    @Column(name = "inbound_time")
    @ApiModelProperty(value = "inboundTime入库时间")
    private Date inboundTime;

    /**
     * 处理人ID
     */
    @Column(name = "update_id")
    @ApiModelProperty(value = "updateId处理人ID")
    private Long updateId;

    /**
     * 修改时间
     */
    @Column(name = "update_time")
    @ApiModelProperty(value = "updateTime修改时间")
    private Date updateTime;

}
